<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>S110_nRF51822/Board/nrf6310_nrf2752/ble/ble_app_gzll/ble_app_gzll_hr.c File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css" />
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="alias.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="alias.js"></script>

<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>


<script type="text/javascript">
  jQuery(document).ready(function () {
    if(gref){ // Number all _img and _table classes
      gref();
    }
  });
</script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->

<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">nRF51822 BLE SDK
   
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
  initNavTree('ble__app__gzll__hr_8c.html','');
</script>
<div id="doc-content">
<div class="header">
  <div class="headertitle">
<div class="title">S110_nRF51822/Board/nrf6310_nrf2752/ble/ble_app_gzll/ble_app_gzll_hr.c File Reference</div>  </div>
</div>
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="ble__app__gzll__hr_8h_source.html">ble_app_gzll_hr.h</a>&quot;</code><br/>
<code>#include &lt;stdint.h&gt;</code><br/>
<code>#include &quot;<a class="el" href="nordic__common_8h_source.html">nordic_common.h</a>&quot;</code><br/>
<code>#include &quot;nrf.h&quot;</code><br/>
<code>#include &quot;<a class="el" href="nrf__assert_8h_source.html">nrf_assert.h</a>&quot;</code><br/>
<code>#include &quot;nrf_error.h&quot;</code><br/>
<code>#include &quot;nrf_gpio.h&quot;</code><br/>
<code>#include &quot;ble.h&quot;</code><br/>
<code>#include &quot;<a class="el" href="ble__srv__common_8h_source.html">ble_srv_common.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="ble__advdata_8h_source.html">ble_advdata.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="ble__bas_8h_source.html">ble_bas.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="ble__hrs_8h_source.html">ble_hrs.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="ble__dis_8h_source.html">ble_dis.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="ble__conn__params_8h_source.html">ble_conn_params.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="ble__sensorsim_8h_source.html">ble_sensorsim.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="ble__stack__handler_8h_source.html">ble_stack_handler.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="app__timer_8h_source.html">app_timer.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="ble__nrf6310__pins_8h_source.html">ble_nrf6310_pins.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="ble__app__gzll__ui_8h_source.html">ble_app_gzll_ui.h</a>&quot;</code><br/>
</div>
<p><a href="ble__app__gzll__hr_8c_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a5f5a2c9450ebc584b4fe743c6b1a280b">DEVICE_NAME</a>&#160;&#160;&#160;&quot;HRGZL_APPV0.1&quot;</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#aaa2b8f5b105c3019df0cb346f472e803">MANUFACTURER_NAME</a>&#160;&#160;&#160;&quot;NordicSemiconductor&quot;</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#adde0b932e57e128e4cd81c2dca47cfe3">APP_ADV_INTERVAL</a>&#160;&#160;&#160;40</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#af58371bad8e1be8e2323df60379ed2df">APP_ADV_TIMEOUT_IN_SECONDS</a>&#160;&#160;&#160;180</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#af28f0232a3fdc0eb03b94eb34b25cde8">BATTERY_LEVEL_MEAS_INTERVAL</a>&#160;&#160;&#160;2000</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a59eb06cba38be11278ebd2829e95bc26">MIN_BATTERY_LEVEL</a>&#160;&#160;&#160;81</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a16896fb7a69ca90a4a4e341d5a888002">MAX_BATTERY_LEVEL</a>&#160;&#160;&#160;100</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a69eef02165834e4dabc5757b82dddbf1">BATTERY_LEVEL_INCREMENT</a>&#160;&#160;&#160;1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a45a3c3dc5dec56bf2ed3d1c4fdb0ccdd">HEART_RATE_MEAS_INTERVAL</a>&#160;&#160;&#160;1000</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a8806d3ee13116211450e6fb3a2fb68a4">MIN_HEART_RATE</a>&#160;&#160;&#160;140</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a5c6a36078512a923ab07d1b8276c8cca">MAX_HEART_RATE</a>&#160;&#160;&#160;160</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a509bd9abefc38f3b7f60c389132c9b81">HEART_RATE_INCREMENT</a>&#160;&#160;&#160;1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a9de92171573c36ded6e571be86716129">RR_INTERVAL_INTERVAL</a>&#160;&#160;&#160;300</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#aeb7cf13d972734ca3c5e7b2ba037281e">MIN_RR_INTERVAL</a>&#160;&#160;&#160;100</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a11c7d3dc75939bf97dd4fcfce486f1de">MAX_RR_INTERVAL</a>&#160;&#160;&#160;500</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#aabc91ee3f6543ceae2371ce367323cac">RR_INTERVAL_INCREMENT</a>&#160;&#160;&#160;1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a9922fc753e0f7eee90179b6d5f20f2c3">SENSOR_CONTACT_DETECTED_INTERVAL</a>&#160;&#160;&#160;5000</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a95196d5d0f40cf195a6001955d6d98cf">MIN_CONN_INTERVAL</a>&#160;&#160;&#160;((1 * 800) / 2)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a7d868ed8adb7d475b463fd8855907a18">MAX_CONN_INTERVAL</a>&#160;&#160;&#160;(1 * 800)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a0c921a874ac37870fc1516ce66cd228a">SLAVE_LATENCY</a>&#160;&#160;&#160;0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a799412c2b531ca347e13611e6e7523b9">CONN_SUP_TIMEOUT</a>&#160;&#160;&#160;(4 * 100)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a7204f7a367e8f1ac53ef62c4ad220efc">FIRST_CONN_PARAMS_UPDATE_DELAY</a>&#160;&#160;&#160;5000</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#adf85796ef07632ed27e0bce9509d9245">NEXT_CONN_PARAMS_UPDATE_DELAY</a>&#160;&#160;&#160;5000</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a34db81384bfbef23dedbef9bc6dfe46c">MAX_CONN_PARAMS_UPDATE_COUNT</a>&#160;&#160;&#160;3</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a7c1fffb0f865552108560d4c63b32db1">SEC_PARAM_TIMEOUT</a>&#160;&#160;&#160;60</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#acbf03a82593c273743a5a80a1119b851">SEC_PARAM_BOND</a>&#160;&#160;&#160;1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#ab6831ebe113f8afe970326b7742b5947">SEC_PARAM_MITM</a>&#160;&#160;&#160;0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a42df85b3a4083cdc614d9111d580d98f">SEC_PARAM_IO_CAPABILITIES</a>&#160;&#160;&#160;BLE_GAP_IO_CAPS_NONE</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#aee13a0d0077f423fa0edd74e17fb6b88">SEC_PARAM_OOB</a>&#160;&#160;&#160;0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a6b7b2e2f67fbf790f55b46f8f5e24ad5">SEC_PARAM_MIN_KEY_SIZE</a>&#160;&#160;&#160;7</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#af2cd1595de153ea1d6d843619a1a7707">SEC_PARAM_MAX_KEY_SIZE</a>&#160;&#160;&#160;16</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structble__gap__sec__params__t.html">ble_gap_sec_params_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a738ed84e141ba1059dd1318dc425343c">s_sec_params</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structble__gap__adv__params__t.html">ble_gap_adv_params_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a50483ecf69a0ae87ce1a8a5e8fa73c04">s_adv_params</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="group__ble__sdk__srv__bas.html#gaea81f98230816bcfcbfd6ccbb4db3999">ble_bas_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#ab22f840926bbada5a0ba32f2f7dc94b3">s_bas</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="group__ble__sdk__srv__hrs.html#gafea0cb34e3a05260b4de67d81f2f4cab">ble_hrs_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a3e49fa0f1c47f72e98bc05de96dd24d4">s_hrs</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#aa4b03af66dfd69f347aad6c9bf06f989">s_rr_interval_enabled</a> = true</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structble__sensorsim__cfg__t.html">ble_sensorsim_cfg_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#aa752585d9b405d6e0c6fd392d7f64b59">s_battery_sim_cfg</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structble__sensorsim__state__t.html">ble_sensorsim_state_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#aa51f5fc284e1b7e1570ab742fa9b63f3">s_battery_sim_state</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structble__sensorsim__cfg__t.html">ble_sensorsim_cfg_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a39e135ff0a64d6761269e856a46b8afe">s_heart_rate_sim_cfg</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structble__sensorsim__state__t.html">ble_sensorsim_state_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a267115c7f20ec331261551282d0ce0c1">s_heart_rate_sim_state</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structble__sensorsim__cfg__t.html">ble_sensorsim_cfg_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a290a111981b0b7a7421cd249be9da006">s_rr_interval_sim_cfg</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structble__sensorsim__state__t.html">ble_sensorsim_state_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#ab8ed76f872599bde36873ea4702e752b">s_rr_interval_sim_state</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab155022684d4acfd98218c3799822e74"></a><!-- doxytag: member="ble_app_gzll_hr.c::battery_level_update" ref="ab155022684d4acfd98218c3799822e74" args="(void)" -->
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#ab155022684d4acfd98218c3799822e74">battery_level_update</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform battery measurement, and update Battery Level characteristic in Battery Service. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a7e5b3d2cf024dde83b8c536b22a1c155">battery_level_meas_timeout_handler</a> (app_timer_id_t timer_id)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Battery measurement timer timeout handler.  <a href="#a7e5b3d2cf024dde83b8c536b22a1c155"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a5f2bc03dde9dbfbd8983fdf45085d55b">heart_rate_meas_timeout_handler</a> (app_timer_id_t timer_id)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Heart rate measurement timer timeout handler.  <a href="#a5f2bc03dde9dbfbd8983fdf45085d55b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a9cb0ab1ccfd2d0873091c3a76b7177af">rr_interval_timeout_handler</a> (app_timer_id_t timer_id)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">RR interval timer timeout handler.  <a href="#a9cb0ab1ccfd2d0873091c3a76b7177af"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#ac05c2186395218b520bdad865660f44d">sensor_contact_detected_timeout_handler</a> (app_timer_id_t timer_id)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Sensor Contact Detected timer timeout handler.  <a href="#ac05c2186395218b520bdad865660f44d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a09658aaa0774820d8f25249d551bc283">timers_init</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Timer initialization.  <a href="#a09658aaa0774820d8f25249d551bc283"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a1004973353f351806e42896c491a5ab2">gap_params_init</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">GAP initialization.  <a href="#a1004973353f351806e42896c491a5ab2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a935c9624de0709fe228dbefa4b54de48">advertising_init</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Advertising functionality initialization.  <a href="#a935c9624de0709fe228dbefa4b54de48"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a5b27b40e18af00d43b92f57eaed0e9b2">services_init</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize services that will be used by the application.  <a href="#a5b27b40e18af00d43b92f57eaed0e9b2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6f75e3fe8d4ed6400f9429987dee0f3e"></a><!-- doxytag: member="ble_app_gzll_hr.c::sensor_sim_init" ref="a6f75e3fe8d4ed6400f9429987dee0f3e" args="(void)" -->
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a6f75e3fe8d4ed6400f9429987dee0f3e">sensor_sim_init</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize the sensor simulators. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9f11118fb9ce22ad1afe20af6f89b131"></a><!-- doxytag: member="ble_app_gzll_hr.c::sec_params_init" ref="a9f11118fb9ce22ad1afe20af6f89b131" args="(void)" -->
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a9f11118fb9ce22ad1afe20af6f89b131">sec_params_init</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize security parameters. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a59f2752bdf059ab72ec3987d0b1db770"></a><!-- doxytag: member="ble_app_gzll_hr.c::application_timers_start" ref="a59f2752bdf059ab72ec3987d0b1db770" args="(void)" -->
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a59f2752bdf059ab72ec3987d0b1db770">application_timers_start</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Start application timers. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adf80cd84ee702e57a2a416fe4f653eb8"></a><!-- doxytag: member="ble_app_gzll_hr.c::advertising_start" ref="adf80cd84ee702e57a2a416fe4f653eb8" args="(void)" -->
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#adf80cd84ee702e57a2a416fe4f653eb8">advertising_start</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Start advertising. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a4538ed130db3bf7fc68b76a4d9e032fa">conn_params_error_handler</a> (uint32_t nrf_error)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Connection Parameters module error handler.  <a href="#a4538ed130db3bf7fc68b76a4d9e032fa"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af61b6c1c47f5c96b169ff81c345d7849"></a><!-- doxytag: member="ble_app_gzll_hr.c::conn_params_init" ref="af61b6c1c47f5c96b169ff81c345d7849" args="(void)" -->
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#af61b6c1c47f5c96b169ff81c345d7849">conn_params_init</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize the Connection Parameters module. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#ad083cb3569230d7ecbf2d01ef2a2c1d9">on_ble_evt</a> (<a class="el" href="structble__evt__t.html">ble_evt_t</a> *p_ble_evt)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Application's BLE Stack event handler.  <a href="#ad083cb3569230d7ecbf2d01ef2a2c1d9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ble__app__gzll__hr_8c.html#a2b08d6ccb6e7f4588d2ac843d4494c0e">ble_evt_dispatch</a> (<a class="el" href="structble__evt__t.html">ble_evt_t</a> *p_ble_evt)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Dispatches a BLE stack event to all modules with a BLE stack event handler.  <a href="#a2b08d6ccb6e7f4588d2ac843d4494c0e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ble__sdk__app__gzll__bluetooth__part.html#ga91945dae4e6f515c9287b64767134b82">ble_stack_start</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">BLE stack initialization.  <a href="group__ble__sdk__app__gzll__bluetooth__part.html#ga91945dae4e6f515c9287b64767134b82"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga91fbf50ad9943de5c7ae04c94a870b2b"></a><!-- doxytag: member="ble_app_gzll_hr.c::ble_stack_stop" ref="ga91fbf50ad9943de5c7ae04c94a870b2b" args="(void)" -->
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ble__sdk__app__gzll__bluetooth__part.html#ga91fbf50ad9943de5c7ae04c94a870b2b">ble_stack_stop</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Disable BLE stack. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ble__sdk__app__gzll__bluetooth__part.html#gae21e1b6b0891b57113e809204c1ba030">ble_hrs_app_start</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes used services and starts the Bluetooth Heart rate application.  <a href="group__ble__sdk__app__gzll__bluetooth__part.html#gae21e1b6b0891b57113e809204c1ba030"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ble__sdk__app__gzll__bluetooth__part.html#ga80e3bf60e6957993c026e0da503e832f">ble_hrs_app_stop</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Stops the Bluetooth Heart rate application.  <a href="group__ble__sdk__app__gzll__bluetooth__part.html#ga80e3bf60e6957993c026e0da503e832f"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock">
<p>Definition in file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>
</div><hr/><h2>Define Documentation</h2>
<a class="anchor" id="a5f5a2c9450ebc584b4fe743c6b1a280b"></a><!-- doxytag: member="ble_app_gzll_hr.c::DEVICE_NAME" ref="a5f5a2c9450ebc584b4fe743c6b1a280b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DEVICE_NAME&#160;&#160;&#160;&quot;HRGZL_APPV0.1&quot;</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Name of device. Will be included in the advertising data. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00041">41</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="aaa2b8f5b105c3019df0cb346f472e803"></a><!-- doxytag: member="ble_app_gzll_hr.c::MANUFACTURER_NAME" ref="aaa2b8f5b105c3019df0cb346f472e803" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MANUFACTURER_NAME&#160;&#160;&#160;&quot;NordicSemiconductor&quot;</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Manufacturer. Will be passed to Device Information Service. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00042">42</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="adde0b932e57e128e4cd81c2dca47cfe3"></a><!-- doxytag: member="ble_app_gzll_hr.c::APP_ADV_INTERVAL" ref="adde0b932e57e128e4cd81c2dca47cfe3" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define APP_ADV_INTERVAL&#160;&#160;&#160;40</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>The advertising interval (in units of 0.625 ms. This value corresponds to 25 ms). </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00043">43</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="af58371bad8e1be8e2323df60379ed2df"></a><!-- doxytag: member="ble_app_gzll_hr.c::APP_ADV_TIMEOUT_IN_SECONDS" ref="af58371bad8e1be8e2323df60379ed2df" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define APP_ADV_TIMEOUT_IN_SECONDS&#160;&#160;&#160;180</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>The advertising timeout in units of seconds. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00044">44</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="af28f0232a3fdc0eb03b94eb34b25cde8"></a><!-- doxytag: member="ble_app_gzll_hr.c::BATTERY_LEVEL_MEAS_INTERVAL" ref="af28f0232a3fdc0eb03b94eb34b25cde8" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define BATTERY_LEVEL_MEAS_INTERVAL&#160;&#160;&#160;2000</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Battery level measurement interval (milliseconds). </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00046">46</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a59eb06cba38be11278ebd2829e95bc26"></a><!-- doxytag: member="ble_app_gzll_hr.c::MIN_BATTERY_LEVEL" ref="a59eb06cba38be11278ebd2829e95bc26" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MIN_BATTERY_LEVEL&#160;&#160;&#160;81</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Minimum battery level as returned by the simulated measurement function. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00047">47</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a16896fb7a69ca90a4a4e341d5a888002"></a><!-- doxytag: member="ble_app_gzll_hr.c::MAX_BATTERY_LEVEL" ref="a16896fb7a69ca90a4a4e341d5a888002" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MAX_BATTERY_LEVEL&#160;&#160;&#160;100</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Maximum battery level as returned by the simulated measurement function. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00048">48</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a69eef02165834e4dabc5757b82dddbf1"></a><!-- doxytag: member="ble_app_gzll_hr.c::BATTERY_LEVEL_INCREMENT" ref="a69eef02165834e4dabc5757b82dddbf1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define BATTERY_LEVEL_INCREMENT&#160;&#160;&#160;1</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Value by which the battery level is incremented/decremented for each call to the simulated measurement function. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00049">49</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a45a3c3dc5dec56bf2ed3d1c4fdb0ccdd"></a><!-- doxytag: member="ble_app_gzll_hr.c::HEART_RATE_MEAS_INTERVAL" ref="a45a3c3dc5dec56bf2ed3d1c4fdb0ccdd" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define HEART_RATE_MEAS_INTERVAL&#160;&#160;&#160;1000</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Heart rate measurement interval (milliseconds). </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00051">51</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a8806d3ee13116211450e6fb3a2fb68a4"></a><!-- doxytag: member="ble_app_gzll_hr.c::MIN_HEART_RATE" ref="a8806d3ee13116211450e6fb3a2fb68a4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MIN_HEART_RATE&#160;&#160;&#160;140</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Minimum heart rate as returned by the simulated measurement function. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00052">52</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a5c6a36078512a923ab07d1b8276c8cca"></a><!-- doxytag: member="ble_app_gzll_hr.c::MAX_HEART_RATE" ref="a5c6a36078512a923ab07d1b8276c8cca" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MAX_HEART_RATE&#160;&#160;&#160;160</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Maximum heart rate as returned by the simulated measurement function. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00053">53</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a509bd9abefc38f3b7f60c389132c9b81"></a><!-- doxytag: member="ble_app_gzll_hr.c::HEART_RATE_INCREMENT" ref="a509bd9abefc38f3b7f60c389132c9b81" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define HEART_RATE_INCREMENT&#160;&#160;&#160;1</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Value by which the heart rate is incremented/decremented for each call to the simulated measurement function. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00054">54</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a9de92171573c36ded6e571be86716129"></a><!-- doxytag: member="ble_app_gzll_hr.c::RR_INTERVAL_INTERVAL" ref="a9de92171573c36ded6e571be86716129" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define RR_INTERVAL_INTERVAL&#160;&#160;&#160;300</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>RR interval interval (milliseconds). </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00056">56</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="aeb7cf13d972734ca3c5e7b2ba037281e"></a><!-- doxytag: member="ble_app_gzll_hr.c::MIN_RR_INTERVAL" ref="aeb7cf13d972734ca3c5e7b2ba037281e" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MIN_RR_INTERVAL&#160;&#160;&#160;100</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Minimum RR interval as returned by the simulated measurement function. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00057">57</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a11c7d3dc75939bf97dd4fcfce486f1de"></a><!-- doxytag: member="ble_app_gzll_hr.c::MAX_RR_INTERVAL" ref="a11c7d3dc75939bf97dd4fcfce486f1de" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MAX_RR_INTERVAL&#160;&#160;&#160;500</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Maximum RR interval as returned by the simulated measurement function. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00058">58</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="aabc91ee3f6543ceae2371ce367323cac"></a><!-- doxytag: member="ble_app_gzll_hr.c::RR_INTERVAL_INCREMENT" ref="aabc91ee3f6543ceae2371ce367323cac" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define RR_INTERVAL_INCREMENT&#160;&#160;&#160;1</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Value by which the RR interval is incremented/decremented for each call to the simulated measurement function. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00059">59</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a9922fc753e0f7eee90179b6d5f20f2c3"></a><!-- doxytag: member="ble_app_gzll_hr.c::SENSOR_CONTACT_DETECTED_INTERVAL" ref="a9922fc753e0f7eee90179b6d5f20f2c3" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SENSOR_CONTACT_DETECTED_INTERVAL&#160;&#160;&#160;5000</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Sensor Contact Detected toggle interval (milliseconds). </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00061">61</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a95196d5d0f40cf195a6001955d6d98cf"></a><!-- doxytag: member="ble_app_gzll_hr.c::MIN_CONN_INTERVAL" ref="a95196d5d0f40cf195a6001955d6d98cf" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MIN_CONN_INTERVAL&#160;&#160;&#160;((1 * 800) / 2)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Minimum acceptable connection interval (0.5 seconds) </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00063">63</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a7d868ed8adb7d475b463fd8855907a18"></a><!-- doxytag: member="ble_app_gzll_hr.c::MAX_CONN_INTERVAL" ref="a7d868ed8adb7d475b463fd8855907a18" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MAX_CONN_INTERVAL&#160;&#160;&#160;(1 * 800)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Maximum acceptable connection interval (1 second). </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00064">64</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a0c921a874ac37870fc1516ce66cd228a"></a><!-- doxytag: member="ble_app_gzll_hr.c::SLAVE_LATENCY" ref="a0c921a874ac37870fc1516ce66cd228a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SLAVE_LATENCY&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Slave latency. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00065">65</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a799412c2b531ca347e13611e6e7523b9"></a><!-- doxytag: member="ble_app_gzll_hr.c::CONN_SUP_TIMEOUT" ref="a799412c2b531ca347e13611e6e7523b9" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CONN_SUP_TIMEOUT&#160;&#160;&#160;(4 * 100)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Connection supervisory timeout (4 seconds). </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00066">66</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a7204f7a367e8f1ac53ef62c4ad220efc"></a><!-- doxytag: member="ble_app_gzll_hr.c::FIRST_CONN_PARAMS_UPDATE_DELAY" ref="a7204f7a367e8f1ac53ef62c4ad220efc" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define FIRST_CONN_PARAMS_UPDATE_DELAY&#160;&#160;&#160;5000</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Time from initiating event (connect or start of notification) to first time ble_gap_conn_param_update is called (15 seconds). </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00067">67</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="adf85796ef07632ed27e0bce9509d9245"></a><!-- doxytag: member="ble_app_gzll_hr.c::NEXT_CONN_PARAMS_UPDATE_DELAY" ref="adf85796ef07632ed27e0bce9509d9245" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define NEXT_CONN_PARAMS_UPDATE_DELAY&#160;&#160;&#160;5000</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Time between each call to ble_gap_conn_param_update after the first (5 seconds). </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00068">68</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a34db81384bfbef23dedbef9bc6dfe46c"></a><!-- doxytag: member="ble_app_gzll_hr.c::MAX_CONN_PARAMS_UPDATE_COUNT" ref="a34db81384bfbef23dedbef9bc6dfe46c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MAX_CONN_PARAMS_UPDATE_COUNT&#160;&#160;&#160;3</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Number of attempts before giving up the connection parameter negotiation. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00069">69</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a7c1fffb0f865552108560d4c63b32db1"></a><!-- doxytag: member="ble_app_gzll_hr.c::SEC_PARAM_TIMEOUT" ref="a7c1fffb0f865552108560d4c63b32db1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SEC_PARAM_TIMEOUT&#160;&#160;&#160;60</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Timeout for Pairing Request or Security Request (in seconds). </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00071">71</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="acbf03a82593c273743a5a80a1119b851"></a><!-- doxytag: member="ble_app_gzll_hr.c::SEC_PARAM_BOND" ref="acbf03a82593c273743a5a80a1119b851" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SEC_PARAM_BOND&#160;&#160;&#160;1</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Perform bonding. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00072">72</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="ab6831ebe113f8afe970326b7742b5947"></a><!-- doxytag: member="ble_app_gzll_hr.c::SEC_PARAM_MITM" ref="ab6831ebe113f8afe970326b7742b5947" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SEC_PARAM_MITM&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Man In The Middle protection not required. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00073">73</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a42df85b3a4083cdc614d9111d580d98f"></a><!-- doxytag: member="ble_app_gzll_hr.c::SEC_PARAM_IO_CAPABILITIES" ref="a42df85b3a4083cdc614d9111d580d98f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SEC_PARAM_IO_CAPABILITIES&#160;&#160;&#160;BLE_GAP_IO_CAPS_NONE</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>No I/O capabilities. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00074">74</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="aee13a0d0077f423fa0edd74e17fb6b88"></a><!-- doxytag: member="ble_app_gzll_hr.c::SEC_PARAM_OOB" ref="aee13a0d0077f423fa0edd74e17fb6b88" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SEC_PARAM_OOB&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Out Of Band data not available. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00075">75</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a6b7b2e2f67fbf790f55b46f8f5e24ad5"></a><!-- doxytag: member="ble_app_gzll_hr.c::SEC_PARAM_MIN_KEY_SIZE" ref="a6b7b2e2f67fbf790f55b46f8f5e24ad5" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SEC_PARAM_MIN_KEY_SIZE&#160;&#160;&#160;7</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Minimum encryption key size. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00076">76</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="af2cd1595de153ea1d6d843619a1a7707"></a><!-- doxytag: member="ble_app_gzll_hr.c::SEC_PARAM_MAX_KEY_SIZE" ref="af2cd1595de153ea1d6d843619a1a7707" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SEC_PARAM_MAX_KEY_SIZE&#160;&#160;&#160;16</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Maximum encryption key size. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00077">77</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="a7e5b3d2cf024dde83b8c536b22a1c155"></a><!-- doxytag: member="ble_app_gzll_hr.c::battery_level_meas_timeout_handler" ref="a7e5b3d2cf024dde83b8c536b22a1c155" args="(app_timer_id_t timer_id)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void battery_level_meas_timeout_handler </td>
          <td>(</td>
          <td class="paramtype">app_timer_id_t&#160;</td>
          <td class="paramname"><em>timer_id</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Battery measurement timer timeout handler. </p>
<p>This function will be called each time the battery level measurement timer expires.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">timer_id</td><td>Id of timer that has expired. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00124">124</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a5f2bc03dde9dbfbd8983fdf45085d55b"></a><!-- doxytag: member="ble_app_gzll_hr.c::heart_rate_meas_timeout_handler" ref="a5f2bc03dde9dbfbd8983fdf45085d55b" args="(app_timer_id_t timer_id)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void heart_rate_meas_timeout_handler </td>
          <td>(</td>
          <td class="paramtype">app_timer_id_t&#160;</td>
          <td class="paramname"><em>timer_id</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Heart rate measurement timer timeout handler. </p>
<p>This function will be called each time the heart rate measurement timer expires. It will exclude RR Interval data from every third measurement.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">timer_id</td><td>Id of timer that has expired. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00138">138</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a9cb0ab1ccfd2d0873091c3a76b7177af"></a><!-- doxytag: member="ble_app_gzll_hr.c::rr_interval_timeout_handler" ref="a9cb0ab1ccfd2d0873091c3a76b7177af" args="(app_timer_id_t timer_id)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void rr_interval_timeout_handler </td>
          <td>(</td>
          <td class="paramtype">app_timer_id_t&#160;</td>
          <td class="paramname"><em>timer_id</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>RR interval timer timeout handler. </p>
<p>This function will be called each time the RR interval timer expires.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">timer_id</td><td>Id of timer that has expired. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00176">176</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="ac05c2186395218b520bdad865660f44d"></a><!-- doxytag: member="ble_app_gzll_hr.c::sensor_contact_detected_timeout_handler" ref="ac05c2186395218b520bdad865660f44d" args="(app_timer_id_t timer_id)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void sensor_contact_detected_timeout_handler </td>
          <td>(</td>
          <td class="paramtype">app_timer_id_t&#160;</td>
          <td class="paramname"><em>timer_id</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sensor Contact Detected timer timeout handler. </p>
<p>This function will be called each time the Sensor Contact Detected timer expires.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">timer_id</td><td>Id of timer that has expired. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00196">196</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a09658aaa0774820d8f25249d551bc283"></a><!-- doxytag: member="ble_app_gzll_hr.c::timers_init" ref="a09658aaa0774820d8f25249d551bc283" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void timers_init </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Timer initialization. </p>
<p>Initializes the timer module. This creates and starts application timers. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00210">210</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a1004973353f351806e42896c491a5ab2"></a><!-- doxytag: member="ble_app_gzll_hr.c::gap_params_init" ref="a1004973353f351806e42896c491a5ab2" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void gap_params_init </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>GAP initialization. </p>
<p>This function shall be used to setup all the necessary GAP (Generic Access Profile) parameters of the device. It also sets the permissions and appearance. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00228">228</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a935c9624de0709fe228dbefa4b54de48"></a><!-- doxytag: member="ble_app_gzll_hr.c::advertising_init" ref="a935c9624de0709fe228dbefa4b54de48" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void advertising_init </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Advertising functionality initialization. </p>
<p>Encodes the required advertising data and passes it to the stack. Also builds a structure to be passed to the stack when starting advertising. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00268">268</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a5b27b40e18af00d43b92f57eaed0e9b2"></a><!-- doxytag: member="ble_app_gzll_hr.c::services_init" ref="a5b27b40e18af00d43b92f57eaed0e9b2" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void services_init </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Initialize services that will be used by the application. </p>
<p>Initialize the Heart Rate, Battery and Device Information services. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00312">312</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a4538ed130db3bf7fc68b76a4d9e032fa"></a><!-- doxytag: member="ble_app_gzll_hr.c::conn_params_error_handler" ref="a4538ed130db3bf7fc68b76a4d9e032fa" args="(uint32_t nrf_error)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void conn_params_error_handler </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>nrf_error</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Connection Parameters module error handler. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">nrf_error</td><td>Error code containing information about what went wrong. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00487">487</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="ad083cb3569230d7ecbf2d01ef2a2c1d9"></a><!-- doxytag: member="ble_app_gzll_hr.c::on_ble_evt" ref="ad083cb3569230d7ecbf2d01ef2a2c1d9" args="(ble_evt_t *p_ble_evt)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void on_ble_evt </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structble__evt__t.html">ble_evt_t</a> *&#160;</td>
          <td class="paramname"><em>p_ble_evt</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Application's BLE Stack event handler. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">p_ble_evt</td><td>Bluetooth stack event. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00523">523</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a2b08d6ccb6e7f4588d2ac843d4494c0e"></a><!-- doxytag: member="ble_app_gzll_hr.c::ble_evt_dispatch" ref="a2b08d6ccb6e7f4588d2ac843d4494c0e" args="(ble_evt_t *p_ble_evt)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void ble_evt_dispatch </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structble__evt__t.html">ble_evt_t</a> *&#160;</td>
          <td class="paramname"><em>p_ble_evt</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Dispatches a BLE stack event to all modules with a BLE stack event handler. </p>
<p>This function is called from the BLE Stack event interrupt handler after a BLE stack event has been received.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">p_ble_evt</td><td>Bluetooth stack event. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00599">599</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<hr/><h2>Variable Documentation</h2>
<a class="anchor" id="a738ed84e141ba1059dd1318dc425343c"></a><!-- doxytag: member="ble_app_gzll_hr.c::s_sec_params" ref="a738ed84e141ba1059dd1318dc425343c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structble__gap__sec__params__t.html">ble_gap_sec_params_t</a> <a class="el" href="group__ble__sdk__app__hrs__eval__main.html#ga738ed84e141ba1059dd1318dc425343c">s_sec_params</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Security requirements for this application. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00079">79</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a50483ecf69a0ae87ce1a8a5e8fa73c04"></a><!-- doxytag: member="ble_app_gzll_hr.c::s_adv_params" ref="a50483ecf69a0ae87ce1a8a5e8fa73c04" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structble__gap__adv__params__t.html">ble_gap_adv_params_t</a> <a class="el" href="group__ble__sdk__app__hrs__eval__main.html#ga50483ecf69a0ae87ce1a8a5e8fa73c04">s_adv_params</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Parameters to be passed to the stack when starting advertising. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00080">80</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="ab22f840926bbada5a0ba32f2f7dc94b3"></a><!-- doxytag: member="ble_app_gzll_hr.c::s_bas" ref="ab22f840926bbada5a0ba32f2f7dc94b3" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__ble__sdk__srv__bas.html#gaea81f98230816bcfcbfd6ccbb4db3999">ble_bas_t</a> <a class="el" href="group__ble__sdk__app__hrs__eval__main.html#gab22f840926bbada5a0ba32f2f7dc94b3">s_bas</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Structure used to identify the battery service. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00081">81</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a3e49fa0f1c47f72e98bc05de96dd24d4"></a><!-- doxytag: member="ble_app_gzll_hr.c::s_hrs" ref="a3e49fa0f1c47f72e98bc05de96dd24d4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__ble__sdk__srv__hrs.html#gafea0cb34e3a05260b4de67d81f2f4cab">ble_hrs_t</a> <a class="el" href="group__ble__sdk__app__hrs__eval__main.html#ga3e49fa0f1c47f72e98bc05de96dd24d4">s_hrs</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Structure used to identify the heart rate service. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00082">82</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="aa4b03af66dfd69f347aad6c9bf06f989"></a><!-- doxytag: member="ble_app_gzll_hr.c::s_rr_interval_enabled" ref="aa4b03af66dfd69f347aad6c9bf06f989" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="group__ble__sdk__app__hrs__main.html#gaa4b03af66dfd69f347aad6c9bf06f989">s_rr_interval_enabled</a> = true<code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Flag for enabling and disabling the registration of new RR interval measurements (the purpose of disabling this is just to test sending HRM without RR interval data. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00083">83</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="aa752585d9b405d6e0c6fd392d7f64b59"></a><!-- doxytag: member="ble_app_gzll_hr.c::s_battery_sim_cfg" ref="aa752585d9b405d6e0c6fd392d7f64b59" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structble__sensorsim__cfg__t.html">ble_sensorsim_cfg_t</a> <a class="el" href="group__ble__sdk__app__proximity__main.html#gaa752585d9b405d6e0c6fd392d7f64b59">s_battery_sim_cfg</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Battery Level sensor simulator configuration. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00085">85</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="aa51f5fc284e1b7e1570ab742fa9b63f3"></a><!-- doxytag: member="ble_app_gzll_hr.c::s_battery_sim_state" ref="aa51f5fc284e1b7e1570ab742fa9b63f3" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structble__sensorsim__state__t.html">ble_sensorsim_state_t</a> <a class="el" href="group__ble__sdk__app__proximity__main.html#gaa51f5fc284e1b7e1570ab742fa9b63f3">s_battery_sim_state</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Battery Level sensor simulator state. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00086">86</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a39e135ff0a64d6761269e856a46b8afe"></a><!-- doxytag: member="ble_app_gzll_hr.c::s_heart_rate_sim_cfg" ref="a39e135ff0a64d6761269e856a46b8afe" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structble__sensorsim__cfg__t.html">ble_sensorsim_cfg_t</a> <a class="el" href="group__ble__sdk__app__hrs__main.html#ga39e135ff0a64d6761269e856a46b8afe">s_heart_rate_sim_cfg</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Heart Rate sensor simulator configuration. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00087">87</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a267115c7f20ec331261551282d0ce0c1"></a><!-- doxytag: member="ble_app_gzll_hr.c::s_heart_rate_sim_state" ref="a267115c7f20ec331261551282d0ce0c1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structble__sensorsim__state__t.html">ble_sensorsim_state_t</a> <a class="el" href="group__ble__sdk__app__hrs__main.html#ga267115c7f20ec331261551282d0ce0c1">s_heart_rate_sim_state</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Heart Rate sensor simulator state. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00088">88</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="a290a111981b0b7a7421cd249be9da006"></a><!-- doxytag: member="ble_app_gzll_hr.c::s_rr_interval_sim_cfg" ref="a290a111981b0b7a7421cd249be9da006" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structble__sensorsim__cfg__t.html">ble_sensorsim_cfg_t</a> <a class="el" href="group__ble__sdk__app__hrs__main.html#ga290a111981b0b7a7421cd249be9da006">s_rr_interval_sim_cfg</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>RR Interval sensor simulator configuration. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00089">89</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
<a class="anchor" id="ab8ed76f872599bde36873ea4702e752b"></a><!-- doxytag: member="ble_app_gzll_hr.c::s_rr_interval_sim_state" ref="ab8ed76f872599bde36873ea4702e752b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structble__sensorsim__state__t.html">ble_sensorsim_state_t</a> <a class="el" href="group__ble__sdk__app__hrs__main.html#gab8ed76f872599bde36873ea4702e752b">s_rr_interval_sim_state</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>RR Interval sensor simulator state. </p>

<p>Definition at line <a class="el" href="ble__app__gzll__hr_8c_source.html#l00090">90</a> of file <a class="el" href="ble__app__gzll__hr_8c_source.html">ble_app_gzll_hr.c</a>.</p>

</div>
</div>
</div>
</div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="ble__app__gzll__hr_8c.html">ble_app_gzll_hr.c</a>      </li>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Defines</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>


    <li class="footer">
      Copyright &copy 2006-2011 <a href="http://www.nordicsemi.no" style="text-decoration:none">Nordic Semiconductor</a>.
      All Rights Reserved.
      <a href="disclaimer.html">Disclaimer</a>
    </li>
   </ul>
 </div>


</body>
</html>
